Rinse the pinto beans thoroughly and place them in a 5-quart Dutch oven or kettle with the cold water.
Bring the beans and water to a boil, then reduce to a simmer for 2 minutes. Remove from heat, cover, and let stand for 1 hour.
Without draining the water, add the smoked ham hocks and chopped onion to the beans. Bring to a boil again, then cover and cook over low heat for 1 hour, stirring occasionally.
Remove the ham hocks from the pot. Carefully remove the meat from the bones, dice it, and discard the bones.
Return the diced ham meat to the beans. Stir in tomato paste, green chili peppers, chili powder, and brown sugar.
Cover and cook over low heat for about 30 minutes, stirring occasionally, until the beans are tender. Add additional water if needed to keep beans moist.
Serve hot as a main dish or hearty side, perfect with cornbread or tortillas.